import { defineConfig } from 'vite';
import { terser } from 'rollup-plugin-terser';

export default defineConfig({
	build: {
		minify: 'terser', // 使用terser插件进行代码压缩
		lib: {
			entry: './lib/main.js',
			name: 'scaleController',
			fileName: format => `scale-controller.${format}.js`,
		},
		rollupOptions: {
			output: {
				formats: ['umd', 'es'],
				globals: {
					// 如果你的库依赖其他库，并且你想在UMD构建中将其暴露为全局变量，可以在这里配置
					// 例如，如果你的库依赖vue，可以这样配置：
					// vue: 'Vue'
				},
			},
			plugins: [
				terser({
					compress: {
						// 删除 console.*
						drop_console: true,
						// 删除 debugger;
						drop_debugger: true,
					},
					format: {
						// 取消代码注释
						comments: false,
					},

					mangle: {
						keep_classnames: false,
						reserved: [],
					},
				}),
			],
		},
	},
});
